Formal Contracts: Enabling Component Composition
نویسنده
چکیده
Traditional component interaction is based on interface calls and callbacks. Such interaction can introduce integration faults, i.e., side effects at the moment of component integration. Solutions to such problems can be hard to apply, and may require drastic changes in the design of the involved components. This paper introduces Formal Contracts, a software construct that allows side-effect free component interaction, and thereby avoids the introduction of integration faults. Furthermore, via a state machine representing the inter-component contract, Formal Contracts, in addition to the static aspects, formally specify the dynamic aspects of component interaction. Formal Contracts are a pragmatic software mechanism that supports the full development cycle: from the specification and decomposition until the debugging, composition, and test of a system.
منابع مشابه
Extracting Functional and Non-functional Contracts from Java Classes and Enterprise Java Beans
We explore possibility of manual and automated contract extraction from Java classes and Enterprise Java Beans. Contracts are extended component interfaces that are defined using Contract Definition Language. They describe functional and non-functional properties. We examine how to extract hidden contracts and express them formally,modeling software components as abstract machines, hoping to ac...
متن کاملContract-Based Web Service Composition Framework with Correctness Guarantees
We present formal and practical foundations for Web service composition framework with composition correctness guarantees. We introduce contractual composition model based on two isomorphic description models: Contract Definition Language (XML) and abstract machines (formal notation). Composition operators (patterns) are used to perform composition which is then formally verified with respect t...
متن کاملBLESS: Formal Specification and Verification of Behaviors for Embedded Systems with Software
Recent experience in the avionics sector has demonstrated the benefits of using rigorous system architectural models, such as those supported by the standard Architectural and Analysis Definition Language (AADL), to ensure that multi-organization composition and integration tasks are successful. Despite its ability to capture interface signatures and system properties, such as scheduling period...
متن کاملA Formal Framework for Design Component Contracts
Building large software systems out of existing software components can save time and cost. These software components range from architectural and design components to binary components in different phases of software development. Component technologies lead to increasing productivity and flexibility. However, it also introduces significant problems in ensuring the integrity and reliability of ...
متن کاملValidation of Decentralised Smart Contracts Through Game Theory and Formal Methods
Decentralised smart contracts represent the next step in the development of protocols that support the interaction of independent players without the presence of a coercing authority. Based on protocols à la BitCoin for digital currencies, smart contracts are believed to be a potentially enabling technology for a wealth of future applications. The validation of such an early developing technolo...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003